"""
字典： 以键值对存储！k-v! 根据键找值！
{key:value,key2:value2}
"""

# dic = {"jay":"周杰伦", "LKL":"2022212078"}

#dic[key] --根据键找值！
#key 必须是可哈希的数据类型！ 要根据key进行哈希计算！再将key:value存放在此地方！
#字典的value可以是任何类型！
# val = dic["LKL"]
# print(val)

#dict() 声明一个空字典！
# dic = dict()

#dic[key] = value ! 增加记录！
#没有此key为增加！ 有此key 则是修改！
# dic["jay"] = "周杰伦"
#给指定key设置默认值！ 如果之前存在这个key，则不起作用！
# dic.setdefault("tom","LKL")

# print(dic)

#删除 dic.pop(key)!删除指定键值对！
# dic.pop("jay")
# print(dic)

#查询 dic[key],dic.get(key)!
# print(dic['tom'])  #key不存在报错！   当确定key没问题时，可以用！
# print(dic.get("LLL")) #key不存在返回None! 当key不确定有没有问题可以用！

#None 单纯就是空！什么都没有！NoneType!
# a = None


#字典的循环嵌套
# dic = {
#     "赵四":"123",
#     "LKL":"111",
#     "jay":"周杰伦"
# }

#for 循环！变量拿到的是key!
# for key in dic:
#     print(key,dic[key])
    # print(dic[key])

#dic.keys()  获取字典的全部key(dict_keys([]))
#list(dic.keys())  转化为列表！
# print(list(dic.keys()))

#dic.values() 获取字典中的全部value!
#list(dic.values) 转化为列表！
# print(list(dic.values()))

#list(dic.items()) 拿到key:value 组成的元组对！
# print(list(dic.items()))
#
# for key,value in dic.items():
#     key = item[0]
#     value = item[1]
#     key,value = item
#     print(key,value)


# a,b = 1,2
# #元组可以解构!  数量一致！
# a,b = (1,2)


#字典的嵌套  --字典里面的值为字典！  多级字典！ 与多元数组了类似！多个[]！
# wangfeng = {
#     "name":"汪峰",
#     "age": 55,
#     "wife":{
#         "name":"LKL",
#         "age":44,
#     }
# }
#
# print(wangfeng["wife"]["name"])


#字典的循环删除！  迭代的时候不能删除字典里的内容！借助临时列表存储要删的key！ 第二次for循环遍历temp再操作dict！
dic = {
    "赵四":"123",
    "LKL":"111",
    "jay":"周杰伦"
}

temp = []
for key in dic:
    if key.startswith("赵"):
        temp.append(key)

for item in temp:
    dic.pop(item)

print(dic)

